Technological advances associated with computers, operating systems and applications have enabled users to interact with systems in a vast and diverse amount of ways. A user interface can provide textual, graphical and/or auditory information to the user. In addition, a user interface can receive and/or solicit input from the user that is utilized to control or operate a computer and software executing on the computer. Typically, input can be obtained via a keyboard, mouse, track pad, track ball, digital pen, and/or touch screen. Further, user interfaces can be non-interactive such as batch interfaces wherein all input is provided up front in batch jobs. In addition, interactive user interfaces can range from simple (e.g., command line interfaces) to complex (e.g., graphical user interfaces). As interfaces grow in complexity, the functionality and features provided therein also expands.
A user often must overcome a learning curve with a user interface before efficient, productive utilization of the interface can occur. Moreover, for novel interfaces (e.g., gesture-based, touch-based, crossing-based, etc.), it can be even more difficult to learn and understand the mechanisms employable to fully interact with the system. User interface documentation can be provided in the form of help screens or user manuals. However, such information is typically provided separate from the application and/or user interface such that it is difficult to perceive both simultaneously.